﻿using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.Xml;

namespace INTERFAZ {

	public class Dialogo : MonoBehaviour {

		//Propiedades
		string IdPersonaje;
		string	Texto;	
		string Escena;
		bool esDescision;
	
		//INTERFAZ.CuadroDialogo cuadroDialogo = new INTERFAZ.CuadroDialogo ();
				
		//Métodos
				
		/// <summary>
		/// Initializes a new instance of the <see cref="INTERFAZ.Dialogo"/> class.
		/// </summary>
		/// <param name="pPersonajeOrigen">P personaje origen.</param>
		/// <param name="pPersonajeDestino">P personaje destino.</param>
		/// <param name="pIdDialogoOrigen">P identifier dialogo origen.</param>
		/// <param name="pDialogoFinal">If set to <c>true</c> p dialogo final.</param>
		public List<string> ObtenerDialogos(string pPersonajeOrigen, string pIdEscena)
		{
			//Cargar documento xml de dialogos
			Debug.Log("ENTRO ACA");
			List<string> dialogo=new List<string>();
			TextAsset asset = Resources.Load("Dialogos") as TextAsset;
			if (asset != null) {
				//XmlTextReader textReader = new XmlTextReader (asset.text);
				XmlDocument doc = new XmlDocument ();
				doc.LoadXml (asset.text);
				Debug.Log("Se carga el dialogo exitosamente");
				foreach (XmlNode nodo in doc.DocumentElement.SelectNodes("//Dialogos/scene[@name='"+ pIdEscena+"']/npc[@id='npc1']/dialogo/p")){
					Debug.Log("Dialogo:"+nodo.InnerText);
					dialogo.Add(nodo.InnerText);
				}
			} else {
				Debug.Log("Error al cargar el xml de dialogos");
			}


			//Filtrar Colección de Diálogos por personaje origen, personage destino, idDialogoOrigen, que puede ser nulo y si es un diálogo final.
						
			return dialogo;
		}


	}	
}